导读
本论文将半监督学习重新制定为一个基于模型的强化学习问题并提出一种新的对抗学习框架。由于之前的对抗学习框架不能直接扩展到半监督文本分类,因为GAN被设计为产生连续数据,自然不能用于离散数据生成。另外自我训练基于启发式方法,其从自己的高置信预测中获得额外的有标签数据,这样其表现是不稳定的,因为糟糕的预测可能得到加强。作者结合自我训练和对抗网络来克服上述问题。具体说来,基于自我训练建立的模型不需要通过重建输入实例来近似数据分布,另一方面,受对抗网络的启发,一个判断网络被引进自我训练来判断某实例数据的标签是不是真的,因此减少了加强糟糕预测的风险并令自我训练变得更稳定和更鲁棒。
论文地址。
ABSTRACT
半监督学习是机器学习技术的分支,其目标是充分利用有标签和无标签数据来改善预测性能。现代真实世界的数据集以前所未有的速度扩大,令为它们建立标签很困难和成本巨大。因此,深度半监督学习变得越来越流行。许多现在的深度半监督方法建立在基于生成模型的方案上,该方案通过重建输入数据近似输入数据的分布。但这种方案对离散数据不起作用,比如文本。另外,学习一个好的数据表征有时会直接和学习一个优秀的预测模型的目标对立。为了解决这些方法的上述问题,作者将半监督学习重新制定为一种基于模型的强化学习问题,并提出一种基于对抗网络的框架。该框架包括两个网络:一个用于目标估计的预测网络和一个用于评估的判断网络(judge network)。判断网络迭代地生成合适的奖励,来指引预测网络的训练,并且预测网络通过策略梯度(policy gradient)训练。基于刚刚提及的框架,作者提出了一个基于循环神经网络的模型用于半监督文本分类。作者在几个真实世界的基准文本数据集上进行了全面的实验分析,评估结果显示了其方法优于其他竞争的最先进的方法。
INTRODUCTION
在许多真实世界应用中,为一个学习问题标注数据常常需要来自经过训练的专家的大量努力。因此,获取大量的标注数据是非常昂贵甚至是不可能的。但是,获取大量未标注数据相对简单和低廉。半监督学习是机器学习方法的一个分支,其旨在利用少量标记数据来利用剩余的未标记数据,以提高预测模型的准确性。
深度学习最新的进展提供了新的精心设计的范例从复杂数据中获得端到端学习的模型。在深度学习背景下,大多数半监督学习算法都基于生成模型方案。在该方法下,深度生成模型作为数据分布的估计器,并且将学得的数据分布作为辅助信息来增强分类模型的学习过程。Goodfellow et al.提出生成对抗网络框架,其中两个网络被训练来相互对抗。这种对抗学习框架在计算视觉任务上取得了很大的成功,并被成功的扩展到半监督图像分类。但是这种框架不能被直接扩展到半监督文本分类,因为GAN被设计用于生成连续数据,这自然不会对离散数据生成起作用。
为了克服GAN自然的限制并且在半监督文本分类中利用对抗训练框架的优点,作者提出了一种基于判别对抗网路(discriminative adversarial networks,DAN)的模型,该模型深植于自我训练(Self-training)。自我训练对于半监督学习来说是最直接的方案。它基于一种启发式方法建立,在这种方法中,模型使用从其高置信预测中获得的额外的标注数据训练。因此,该方法的表现不稳定,因为糟糕预测可能被加强。在本论文中,作者将自我训练和对抗学习网络的思想结合起来克服它们的问题。具体来说,基于自我训练建立的模型不需要通过重建输入实例来近似数据分布,因此就克服了基于GAN的半监督学习方法的限制,另一方面,受对抗网络的启发,一个判断网络被引进自我训练来判断某实例数据的标签是不是真的,因此减少了加强糟糕预测的风险并令自我训练变得更稳定和更鲁棒。
将上述两个学习框架联合起来并结合它们的优点,在该论文中,作者提出RLANS框架,即Reinforcement Learning based Adversarial Network for Semi-supervised learning。该框架将半监督学习的预测网络 P 重新制定为一个强化学习代理(agent),其中状态是输入数据,动作是标签预测。因此,学习问题的首要目标被转换为 P 学习一个好的策略的问题,使得生成的预测标签可以最大化期望的总奖励。预测网络 P 通过策略梯度(policy gradient)学得。判断网络 J 用来评估预测的标签和提供评估的反馈来引导预测器的学习。采用 J 的反馈作为奖励可以迭代地改进预测网络 P ,因为奖励是动态更新的。具体来说,令$D_L =
\{(x_1,y_1),…,(x_l,x_l)|x_i \in \mathcal{X},y_i \in \mathcal{Y}\}$是一组$l$个标注实例,令$D_
U = \{x_{l+1},…x_{l+u}|x_i \in \mathcal{X}\}$是一组$u$个未标注的实例。该论文提出的模型总体结构如Figure 1所示。
强化学习是不稳定的甚至是发散的,当行动值函数(action-value function)是由非线性函数表征时。在模型实现中,为了缓解不稳定性,预测器 P 在$D_L$上使用最大似然估计预训练几个迭代,并且当预测器预训练结束时,判断器 J 也要预训练几次迭代。
论文主要的贡献总结如下:
- 受自我训练的启发,为了同时考虑有标签和无标签实例,作者将半监督学习问题重新制定为基于模型的强化学习问题。
- 作者为半监督学习提出一种基于对抗网络的框架。不像大多数其他基于GAN的半监督学习方法,该框架不需要重建输入数据,因此可以应用于半监督文本分类。
- 基于提出的RLANS框架,作者为半监督文本分类提出一种具体模型,另外,在几种基准数据集上进行了全面的实验分析。
RELATED WORK
半监督学习可以朔源到1970s,并且从1990s起,它引起了极大的关注。现在的半监督学习方法可以大概的归为如下几类:self-training,transductive leaning based,co-training,graph-based,和generative model based。在本部分,我们先简短的描述以上每个类别最重要的工作,然后重点讲述这些方法和作者提出的方法的关系和主要区别。
在前面提及的所有半监督学习方案中,最直截了当的方法是自我训练方案,其中预测模型使用标签数据和最置信的预测迭代的重新训练。转换支持向量机TSVM是用于半监督学习著名的转换方法。它将支持向量机作扩展,旨在找到处在低密度区域的判别决策边界,因此使其到原始标签数据和无标签数据都为最大间隔。共同训练是多视图学习的一个特殊例子,其假设数据拥有两个视图并且每个视图都能够训练一个好的预测器。最初,对每一种视图,一个独立的分类器使用标注数据训练。接着每一个训练器对未标注数据的最置信的预测联合标注数据迭代的重新训练其他的分类器。基于图的半监督方法为标注实例和未标注实例构建一个相似图,并且相似的实例别假设为同一类。其他方法比如Gaussian fields和隐马尔可夫随机域被引入基于图的半监督学习在图内建模标签传播。
基于生成模型的半监督学习方案可以被看作是联合数据分布辅助信息的监督学习的扩展,数据分布通过重建输入数据学得。在之前的十年,一些传统生成混合模型被用于半监督学习。随着深度学习方法的发展,深度神经网络被用作密度估计器(ps:概率密度)并且比传统生成模型更有弹性和更强大。深度生成模型比如VAE和GAN在近些年取得令人印象深刻的成功。在这类基于重建的半监督学习方法中,生成器被训练学习能够保留输入样本所有信息的表征,以此实现完美重建数据。生成器常被用来预训练分类网络。但是,分类器的学习是一个最小化对标签预测有价值的信息的过程,这就成为了完美数据重建的对立面(ps:最小化有价值的信息,是指其是一种消耗品吗?),因此有时学得的表征甚至可能损害预测模型的性能。
基于重建的半监督学习方案,在[8]用于半监督学习的两阶段方法被提出来。首先,在预训练阶段,一个传统的无监督语言模型[2]被构建用来学习序列的向量表征,该模型预测在序列中下一个是什么。其次,从预训练阶段获得模型参数,作为在文本分类中有监督训练模型的出发点。基于这种方案,在工作20中,作者引入对抗扰动增强了第二阶段。在这些论文中,无标签数据并未直接用于第二阶段训练分类器。最近[28],基于DAN的方法被提出来用于半监督学习。但是,标注数据仅用来训练判断网络,并不用于训练预测网络。
在该论文中,不同于上述所有的深度半监督学习模型,作者们将半监督学习重新制定为基于模型的强化学习问题,并且提出一种基于对抗网络的框架来改进训练过程。该论文提出的RLANS与上述深度半监督学习方法的主要不同总结如下:
- 不同于深度生成半监督学习模型,RLANS框架不需要执行实例重建来近似数据分布。因此,该框架可以轻松的用在半监督文本分类。
- 不同于现有的深度半监督文本分类算法,RLANS框架采用了强化学习和对抗网络的优点。因此,可以迭代更新,并且标注数据和未标注数据可以直接用于训练分类器。
METHODS
在该部分,我们详细介绍为半监督学习提出的对抗学习框架。我们先描述RLANS框架的总体架构,接着描述为半监督文本分类提出来的一种具体的模型。
Model Overview
半监督学习的首要目标是从标注数据$D_L$和未标注数据$D_U$中学习一个参数为$\theta$的预测模型$P_\theta$,使得预测标签尽可能接近真实标签。因为未标注实例的标注信息是未知的,基于常用的最大似然估计来训练预测器$P_\theta$并不是一种直截了当的方法。取而代之,在本论文中,作者将半监督学习重新制定为强化学习问题。
训练预测模型$P_\theta$。作者基于强化学习解释预测问题,其中输入数据$x$可以被视为是状态,并且相应的预测标签$\hat{y}$被看作动作。预测器$P_\theta(\hat{y}|x)$可以被视为策略模型,给定状态$x$,决定行动$\hat{y}$的概率。该策略模型的目标是生成合适的预测标签以最大化期望奖励:
其中$\mathcal{Y}$是可行动作空间,$V(\cdot)$是选择$\hat{y}$作为行动的行动值函数。在半监督学习中,给定输入数据,一个好的预测器应该生成尽可能接近真实标签的预测标签。因此,行动值函数在该问题中被定义为预测标签$\hat{y}$和真实标签$y$的相似度。
现在关键的问题就是如何为$\hat{y}$和$y$定义一个合适的相似度函数,特别是未标注实例的真实标签是未知的。为了解决这个问题,受对抗学习框架GAN的启发,作者训练一个判别模型$J_\phi$作评判,为改进预测器$P_\theta$提供引导。$J_\phi(x,\hat{y})$是指示$(x,\hat{y})$被认为是真实数据-标签对的概率。因此,在RLANS中,行动值函数可以被定义如下:
在行动值函数中使用$J_\phi(x,\hat{y})$的主要优点是$J_\phi$是动态更新的,因此它可以迭代地改进预测器$P_\theta$。值得注意,上面定义的行动值函数在每次迭代中提供即时的奖励,因此并不需要使用额外的技术,比如蒙特卡洛树搜索,Temporal-Difference (TD) learning 来近似长期奖励。
最大化公式(1)中的目标需要计算关于模型参数$\theta$的梯度:
使用似然比技巧公式(3)可以被重写为:
公式(4)是公式(3)的无偏估计。在实际中,作者使用m个标注实例和m个未标注实例作为一个小批量来训练模型,近似梯度可以计算如下:
接下来预测模型的参数$\theta$可以按照如下更新:
训练判断模型$J_\phi$。在该框架中,$J_\phi$是这样训练的,将一组真实标注实例$\{(x_i,y_i) \in D_L \}$作为正样本,一组未标注数据和相应的预测标签$\{(x_i,\hat{y}_i) |x_i \in D_U,\hat{y}_i \in P_\theta(x_i)\}$作为负样本。判断模型$J_\phi$应该尽可能清楚的判别正样本和负样本。因此,判断模型的训练需要最小化交叉熵:
Algorithm 1总结了RLANS总体的训练过程。在对抗学习前,在第一行预测器使用最大似然估计在标注数据$D_L$上先预训练。在第三行判读模型$J_\phi$通过最小化交叉熵在真实标注实例和假的和预测标注数据上预训练。在每次对抗训练循环中,预测器$P_\theta$为m个未标注数据预测标签。判断模型$J_\phi$使用真实数据-标签对和预测数据-标签对进行训练。每次新的判断模型获得时,就按照公式(5)计算更新行动值函数,然后通过策略梯度更新预测器。
RLANS For Semi-supervised Text Classification
基于上述提及的RLANS框架,作者提出为半监督文本分类提出了一个具体的模型。
用于文本的预测器网络。在该论文中,作者使用基于标准LSTM网络的模型作为预测器,如图Figure 2所示:
令一个实例$x = \{w^{(1)},\cdot \cdot \cdot,w^{(T)}|w^{(t)} \in {\{0,1\}}^k\}$是T个单词的独热编码序列,其对应的目标$\mathcal{y} \in {\{0,1\}}^c$是c个类标签的独热编码,其中k是单词表中不同的单词的数目。一个嵌入矩阵$E \in R^{(k+1)\times p}$用来将原始的独热编码表征为相应的p维连续向量$\{v^{(1)},\cdot \cdot \cdot,v^{(T)}\}$,其中词向量的第k+1维被用作指示序列结束标志$V_{eos}$。给定输入单词$w^{(t)}$,在第$t-1$步,长期单元状态$c^{(t-1)} \in R^{1 \times q}$,隐藏状态$h^{(t-1)} \in R^{1 \times q}$,在第$t$步,$c^{(t)},h^{(t)}$被计算。在最后一步,给定最后隐藏状态$h_{eos}$,该模型先通过带有Relu的全连接网络计算隐藏向量$h_c \in R^{1 \times d}$,然后使用softmax output layer计算相应的估计标签的分布:
用于文本的判断网络。在该论文中,作者使用基于LSTM的模型作为其判断网络,如Figure 3所示:
在第t步,一个目前估计的标签向量$o(t) \in R^{1 \times c}$通过一个子网络生成,该子网络的结构和之前的预测网络的输出部分是一样的。接着将$o^{( t )}$,独热编码目标向量$y$(或者未标注数据的估计目标向量$\hat{y}$)拼接起来。一旦所有拼接向量都生成了,一个权重联合如下:
该值作为判断模型输出部分的输入,其中$\beta \in R^T$是可训练的权重向量。
判断模型的目标是估计$(y;w^{(1)},\cdot \cdot \cdot,w^{(T)})$来自标注数据$D_L$可能性的概率,其在${[o,y]}_\beta$是两个成分的联合概率。一个单层的神经网络单独的处理所有输入特征,因此不能进行特征提取。因此,设计的输出网络应该具有多层。在作者的模型中,输出网络具有两层,分别如下是:
CONCLUSION
在该论文中,作者将半监督学习重新制定为基于模型的强化学习问题,并且提出一种新的对抗学习框架RLANS。该框架包含两个网络:一个预测网络和一个判断网络。判断网络用来动态地评估预测网络的表现并提供反馈作为奖励动态地引导预测器地学习过程。RLANS框架并不要求数据生成,因此可以轻易的用于离散数据。基于该框架,作者提出一种用于半监督文本分类的具体模型。作者广泛地比较了所提算法的性能与一些最先进的深度半监督文本分类算法的性能,在几个基准文本数据集上。
将来,基于提出的框架,作者计划为不同类型的数据精心设计更具体的预测和判断网络。然后,作者计划基于强化学习方案开发更先进的深度半监督学习方法。作者还计划进行一些相应的理论分析,以进一步提高拟议框架的稳定性。
REFERENCES
[2] oshua Bengio, Réjean Ducharme, Pascal Vincent, and Christian Jauvin. 2003. A neural probabilistic language model. Journal of machine
learning research 3, Feb (2003), 1137–1155.
[8] Andrew M Dai and Quoc V Le. 2015. Semi-supervised sequence learning. In Advances in Neural Information Processing Systems. 3079–3087.
[20] Takeru Miyato, Andrew M Dai, and Ian Goodfellow. 2016. Adversarial Training Methods for Semi-Supervised Text Classification. arXiv
preprint arXiv:1605.07725 (2016).
[28] Cicero Nogueira dos Santos, Kahini Wadhawan, and Bowen Zhou. 2017. Learning Loss Functions for Semi-supervised Learning via Discriminative Adversarial Networks. arXiv preprint arXiv:1707.02198
(2017).